<script setup>
import { ref, onMounted } from 'vue'
import { userInfoStore } from './stores/userinfo'

const userStore = userInfoStore()

// 初始化用户状态
const initializeApp = async () => {
  // 如果localStorage中有token，尝试验证
  if (userStore.token) {
    try {
      // 验证token有效性
      const isValid = await userStore.validateToken()
      if (!isValid) {
        userStore.clearUserData()
        ElMessage.warning('登录已过期，请重新登录')
      } else {
        console.log('Token验证成功，用户保持登录状态')
      }
    } catch (error) {
      console.error('初始化用户状态失败:', error)
      // 如果是网络错误，可以保持本地状态
      if (error.code === 'NETWORK_ERROR') {
        ElMessage.warning('网络连接异常，使用本地登录状态')
      }
    }
  }
}

onMounted(() => {
  initializeApp()
})
</script>

<template>
  <RouterView></RouterView>
</template>

<style scoped></style>
